A challenge in machine vision systems is to make them user friendly and accessible to a broader range of potential users. There are certain aspects that users understand clearly (for example, how to generate a set of training images) and what the ground truth of the situation is. However, beyond that, many of the aspects of training and run-time operation of the machine vision systems will be more difficult to apply.
In machine vision where images of objects are obtained using a camera or other imaging device and where a pattern on the object being imaged is located using a method that executes on a computer or other computing device. Given a set of images, each of which contains at least one instance of a target pattern, but where the target pattern may vary in appearance, it can also be a challenge to identify and train a minimum set of pattern recognition and registration models that are applicable for all images in the image set. The pattern recognition and registration procedure is described in greater detail in U.S. Pat. Nos. 6,408,109; 6,658,145; and 7,016,539, the disclosures of which are incorporated by reference as useful background information. If a pattern is recognized, the pattern recognition and registration procedure (or “tool”) confirms that the viewed pattern is, in fact, the pattern for which the tool is searching and fixes its position, orientation, scale, skew and aspect. An example of such a search tool is the PatMax® product available from Cognex Corporation of Natick, Massa., USA. The pattern recognition and registration procedure is a method of geometric pattern finding. The methods described herein apply generally to geometric pattern finding.
For example, a pattern might consist of elements containing circles and lines. Referring to FIG. 1, pattern 110 includes a circle 112 and two intersecting lines 114, 116; pattern 120 includes a circle 122 and a pair of lines 124, 126; and pattern 130 includes a circle 132 and a pair of lines 134, 136. Across the image set of trained images, the circles may vary in radius and the lines vary by thickness or number. This may be particularly so in the field of semiconductors or other materials in which a plurality of layers are deposited on a substrate, which can lead to distortion of features on each of the layers. The polarity of the patterns may also change throughout the image set (as shown in the difference between pattern 120 and pattern 130. The images may also contain a high degree of noise.
The problem has at least two components. First, the training image set consists of noisy images so it is difficult to train a clean model from a single image. Second, the pattern has different appearances in the training set which makes training a single model both difficult and prone to error at runtime.